<template>
  <div class="se-1">
    <div class="h-1">服务数量</div>
    <div class="dm-1">
      <div class="dm-2">
        累计点播次数:<span class="sp-1">{{ sun1 }}</span>
      </div>
      <div class="dm-3">
        今日点播次数：<span class="sp-2">{{ sun2 }}</span>
      </div>
    </div>
    <div class="z-1" ref="zhf"></div>
  </div>
</template>

<script lang="ts" setup>
import { ref, onMounted } from 'vue'
import { getLjdb, getJrdb, getZxtData } from '@/services/index'
import * as echarts from 'echarts'
const sun1 = ref()
const sun2 = ref()
const arr = ref<string[]>([]) //x轴时间
const arr1 = ref<string[]>([]) //昨天
const arr2 = ref<string[]>([]) //今天
const zhf = ref()
const sun = async () => {
  const res = await getLjdb()
  sun1.value = res.data[0].value
}
const sun3 = async () => {
  const res = await getJrdb()
  console.log(res.data)

  sun2.value = res.data[0].value
}
const zhus = async () => {
  const res = await getZxtData()
  res.data[0].forEach((item) => {
    arr.value.push(item.x)
    arr1.value.push(item.y)
  })
  res.data[1].forEach((item) => {
    arr2.value.push(item.y)
  })
  console.log(arr)

  const myChart = echarts.init(zhf.value)

  const option = {
    xAxis: {
      type: 'category',
      data: arr.value,
      axisLabel: {
        color: '#fff', // 设置 x 轴字体颜色为白色
        fontSize: 12 // 设置 x 轴字体大小为16px
      }
    },
    yAxis: {
      type: 'value',
      axisLabel: {
        color: '#fff'
      }
    },
    dataZoom: [
      // 使用dataZoom进行缩放和漫游
      {
        type: 'slider',
        start: 0, // 起始位置为0
        end: 100 // 结束位置为10
      }
    ],
    tooltip: {
      // 使用 tooltip 显示当前数据
      trigger: 'axis',
      axisPointer: {
        type: 'cross'
      },
      formatter: function (params: any) {
        let content = params[0].axisValueLabel + '<br>' // 第一部分显示当前时间
        content +=
          '<span style="color: green;">昨天：' +
          params[0]?.value +
          '</span><br>' // 第二部分显示昨天的数据，颜色为绿色
        content +=
          '<span style="color: blue;">今天：' + params[1]?.value + '</span>' // 第三部分显示今天的数据，颜色为蓝色
        return content
      }
    },
    legend: {
      // 添加 legend 配置
      data: ['昨天', '今天'], // 设置系列名称
      textStyle: { color: '#fff' },
      icon: 'rect', // 使用方块形状
      itemWidth: 20, // 设置图例宽度
      itemHeight: 10 // 设置图例高度 // 设置文本颜色为白色
    },
    series: [
      {
        name: '昨天', // 修改系列名称
        data: arr1.value,
        type: 'line',
        itemStyle: {
          color: 'green'
        }
      },
      {
        name: '今天', // 修改系列名称
        data: arr2.value,
        type: 'line',
        itemStyle: {
          color: 'blue'
        }
      }
    ]
  }

  myChart.setOption(option)
}
onMounted(() => {
  sun()
  sun3()
  zhus()
})
</script>

<style lang="scss" scoped>
.se-1 {
  width: 660px;
  height: 399px;
  background-image: url('../../assets/img/z-1.png');
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin: 0 10px;
  padding: 10px;
  box-sizing: border-box;
  .h-1 {
    color: rgb(255, 255, 255);
    font-weight: bold;
    font-family: 'Microsoft Yahei', Arial, 'sans-serif';
    font-size: 22px;
  }
  .dm-1 {
    display: flex;
    justify-content: space-between;
    .dm-2 {
      width: 220px;
      height: 50px;
      color: rgba(255, 255, 255, 0.8);
      font-weight: normal;
      font-family: 'Microsoft Yahei', Arial, 'sans-serif';
      font-size: 16px;
      .sp-1 {
        font-size: 24px;
        color: #08c0e1;
      }
    }
    .dm-3 {
      width: 187px;
      height: 50px;
      color: rgba(255, 255, 255, 0.8);
      font-weight: normal;
      font-family: 'Microsoft Yahei', Arial, 'sans-serif';
      font-size: 16px;
      .sp-2 {
        font-size: 24px;
        color: #08c0e1;
      }
    }
  }
  .z-1 {
    width: 100%;
    height: 290px;
    box-sizing: border-box;
    border: 1px solid #fff;
    // background: red;
  }
}
</style>
